Complex Text Patterns Matching (e.g. Hashtags, Mentions)

Web Development - জাভাস্ক্রিপ্ট রেগএক্সপি (Javascript RegExp) - Complex Pattern Matching এবং Case Studies
135

RegExp-এ Complex Text Patterns Matching এর মাধ্যমে আপনি নির্দিষ্ট কাঠামো অনুসরণ করা টেক্সটের ধরন যেমন Hashtags (#), Mentions (@) বা অন্যান্য কাস্টম প্যাটার্নগুলো খুঁজে বের করতে পারেন। এই ধরনের প্যাটার্ন সাধারণত সোশ্যাল মিডিয়া বা ব্লগ প্ল্যাটফর্মে ব্যবহৃত হয়, যেখানে নির্দিষ্ট চিহ্নের পর একটি শব্দ বা নাম আসে। RegExp-এর মাধ্যমে আপনি সহজেই এই ধরনের প্যাটার্নগুলো শনাক্ত এবং প্রক্রিয়া করতে পারেন।


Hashtags (#)

Hashtags সাধারণত # চিহ্ন দিয়ে শুরু হয় এবং তারপর একটি বা একাধিক অক্ষর, সংখ্যা, অথবা আন্ডারস্কোর থাকে। RegExp দিয়ে আপনি এই ধরনের প্যাটার্ন খুঁজে বের করতে পারেন।


Hashtag Matching RegExp উদাহরণ

let regex = /#\w+/g;
let str = "I love #JavaScript and #React!";
let matches = str.match(regex);
console.log(matches);  // ["#JavaScript", "#React"]

এখানে, / #\w+/g প্যাটার্নটি:

  • #: একটি হ্যাশট্যাগ চিহ্নের জন্য।
  • \w+: এক বা একাধিক word character (অক্ষর, সংখ্যা, বা আন্ডারস্কোর)।
  • g: গ্লোবাল ফ্ল্যাগ, যা পুরো স্ট্রিং স্ক্যান করতে সাহায্য করে।

এটি #JavaScript এবং #React হ্যাশট্যাগগুলো মেলে দিয়েছে।


Mentions (@)

Mentions সাধারণত @ চিহ্ন দিয়ে শুরু হয় এবং তারপর ব্যবহারকারীর নাম বা আইডি থাকে। RegExp ব্যবহার করে আপনি @ চিহ্নের পরে থাকা নাম বা আইডি শনাক্ত করতে পারেন।


Mention Matching RegExp উদাহরণ

let regex = /@\w+/g;
let str = "Hello @john, meet @doe!";
let matches = str.match(regex);
console.log(matches);  // ["@john", "@doe"]

এখানে, / @\w+/g প্যাটার্নটি:

  • @: একটি মেনশন চিহ্নের জন্য।
  • \w+: এক বা একাধিক word character (অক্ষর, সংখ্যা, বা আন্ডারস্কোর)।
  • g: গ্লোবাল ফ্ল্যাগ, যা পুরো স্ট্রিং স্ক্যান করতে সাহায্য করে।

এটি @john এবং @doe মেনশনগুলো খুঁজে পেয়ে মেলিয়েছে।


Complex Patterns: Hashtags and Mentions একসাথে

আপনি যদি একই স্ট্রিংয়ের মধ্যে hashtags এবং mentions একসাথে খুঁজতে চান, তবে একাধিক প্যাটার্নের সমন্বয়ে একটি RegExp তৈরি করতে পারেন।


উদাহরণ: Hashtags এবং Mentions একসাথে

let regex = /(?:#\w+|@\w+)/g;
let str = "Hello @john, check out #JavaScript and #React!";
let matches = str.match(regex);
console.log(matches);  // ["@john", "#JavaScript", "#React"]

এখানে, (?:#\w+|@\w+) প্যাটার্নটি:

  • (?: ...): Non-capturing group, যা গ্রুপিং ছাড়া প্যাটার্নগুলো মিলাবে।
  • #\w+: একটি হ্যাশট্যাগ খুঁজবে, যার পর word character থাকবে।
  • @\w+: একটি মেনশন খুঁজবে, যার পর word character থাকবে।
  • |: OR অপারেটর, যা দুটি শর্তের মধ্যে মিল খুঁজতে সাহায্য করে।

এটি @john, #JavaScript, এবং #React মেলাচ্ছে।


More Complex Pattern Examples

আপনি আরও জটিল প্যাটার্ন তৈরি করতে পারেন, যেমন:

  • Hashtags যেগুলিতে শুধুমাত্র অক্ষর এবং সংখ্যার পাশাপাশি হাইফেন (-) থাকতে পারে।
  • Mentions যেগুলিতে অক্ষরের পাশাপাশি ডট (.) বা হাইফেন (-) থাকতে পারে।

উদাহরণ: Complex Hashtags

let regex = /#\w+(-\w+)*\b/g;
let str = "Check out #javaScript-101 and #React-Versions!";
let matches = str.match(regex);
console.log(matches);  // ["#javaScript-101", "#React-Versions"]

এখানে, #\w+(-\w+)*\b প্যাটার্নটি:

  • #: হ্যাশট্যাগ চিহ্ন।
  • \w+: শব্দ চরিত্র।
  • (-\w+)*: এক বা একাধিক হাইফেন (-) এবং তারপর একটি শব্দ চরিত্র।
  • \b: শব্দের সীমানা।

এটি #javaScript-101 এবং #React-Versions মেলাবে।


উদাহরণ: Complex Mentions

let regex = /@\w+(-\w+)*\b/g;
let str = "Hello @john_doe and @jane-doe!";
let matches = str.match(regex);
console.log(matches);  // ["@john_doe", "@jane-doe"]

এখানে, @\w+(-\w+)*\b প্যাটার্নটি:

  • @: মেনশন চিহ্ন।
  • \w+: শব্দ চরিত্র।
  • (-\w+)*: এক বা একাধিক হাইফেন (-) এবং তারপর একটি শব্দ চরিত্র।
  • \b: শব্দের সীমানা।

এটি @john_doe এবং @jane-doe মেলাবে।


সারাংশ

Hashtags এবং Mentions এর মতো Complex Text Patterns খুঁজে বের করতে RegExp অত্যন্ত কার্যকর। আপনি বিভিন্ন প্যাটার্নের সাথে যেমন #\w+ এবং @\w+ ব্যবহার করে সোশ্যাল মিডিয়া টেক্সট বা অন্যান্য স্ট্রিংয়ের মধ্যে নির্দিষ্ট চিহ্নের পর থাকা নাম বা ট্যাগ শনাক্ত করতে পারেন। এছাড়া, OR অপারেটর এবং non-capturing group ব্যবহার করে আপনি একাধিক প্যাটার্ন একসাথে মিলিয়ে আরও জটিল পরিস্থিতি মেলাতে পারবেন।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...